home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 125 / Computer Shopper CD-ROM Issue 125 (1998-07)(Dennis Publishing).iso / Business / Dazzler / DAZZLER.Z / CColorArray.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-11-26  |  1.5 KB  |  134 lines

  1. import java.awt.Color;
  2.  
  3. class CColorArray {
  4.    private Color[] m_colArray;
  5.    private int m_nNoElements;
  6.  
  7.    void SetSize(int var1) {
  8.       this.m_colArray = new Color[var1];
  9.       this.m_nNoElements = var1;
  10.    }
  11.  
  12.    Color GetAt(int var1) {
  13.       Color var2 = null;
  14.  
  15.       try {
  16.          var2 = this.m_colArray[var1];
  17.       } catch (ArrayIndexOutOfBoundsException var3) {
  18.       }
  19.  
  20.       return var2;
  21.    }
  22.  
  23.    boolean InsertAt(int var1, Color var2) {
  24.       boolean var3 = false;
  25.       if (var1 >= 0) {
  26.          if (var1 > this.m_nNoElements - 1) {
  27.             var3 = this.SetAtGrow(var1, var2);
  28.          } else {
  29.             Color[] var4 = new Color[this.m_nNoElements];
  30.             System.arraycopy(this.m_colArray, 0, var4, 0, this.m_nNoElements);
  31.             this.m_colArray = new Color[this.m_nNoElements + 1];
  32.             if (this.SetAt(var1, var2)) {
  33.                System.arraycopy(var4, 0, this.m_colArray, 0, var1);
  34.                System.arraycopy(var4, var1, this.m_colArray, var1 + 1, this.m_nNoElements - var1);
  35.                ++this.m_nNoElements;
  36.                var3 = true;
  37.             }
  38.          }
  39.       }
  40.  
  41.       return var3;
  42.    }
  43.  
  44.    boolean Add(Color var1) {
  45.       return this.SetAtGrow(this.m_nNoElements, var1);
  46.    }
  47.  
  48.    boolean RemoveAt(int var1) {
  49.       boolean var2 = false;
  50.       if (var1 >= 0 && var1 < this.m_nNoElements) {
  51.          Color[] var3 = new Color[this.m_nNoElements];
  52.          System.arraycopy(this.m_colArray, 0, var3, 0, this.m_nNoElements);
  53.          this.m_colArray = new Color[this.m_nNoElements - 1];
  54.          System.arraycopy(var3, 0, this.m_colArray, 0, var1);
  55.          System.arraycopy(var3, var1 + 1, this.m_colArray, var1, this.m_nNoElements - (var1 + 1));
  56.          this.m_nNoElements += -1;
  57.          var2 = true;
  58.       }
  59.  
  60.       return var2;
  61.    }
  62.  
  63.    boolean Copy(CColorArray var1) {
  64.       boolean var2 = false;
  65.       this.SetSize(var1.GetSize());
  66.  
  67.       for(int var3 = 0; var3 < this.m_nNoElements; ++var3) {
  68.          if (!this.SetAt(var3, var1.GetAt(var3))) {
  69.             var2 = false;
  70.             break;
  71.          }
  72.  
  73.          var2 = true;
  74.       }
  75.  
  76.       return var2;
  77.    }
  78.  
  79.    int GetSize() {
  80.       return this.m_nNoElements;
  81.    }
  82.  
  83.    boolean SetAtGrow(int var1, Color var2) {
  84.       boolean var3 = false;
  85.       if (var1 >= 0) {
  86.          while(!var3) {
  87.             if (var1 < this.m_nNoElements) {
  88.                this.m_colArray[var1] = var2;
  89.                var3 = true;
  90.             } else {
  91.                Color[] var4 = new Color[var1 + 1];
  92.                System.arraycopy(this.m_colArray, 0, var4, 0, this.m_nNoElements);
  93.                this.m_colArray = new Color[var1 + 1];
  94.                System.arraycopy(var4, 0, this.m_colArray, 0, this.m_nNoElements);
  95.                this.m_nNoElements = var1 + 1;
  96.                var3 = false;
  97.             }
  98.          }
  99.       }
  100.  
  101.       return var3;
  102.    }
  103.  
  104.    int GetUpperBound() {
  105.       return this.m_nNoElements - 1;
  106.    }
  107.  
  108.    void RemoveAll() {
  109.       this.SetSize(0);
  110.    }
  111.  
  112.    CColorArray() {
  113.       this.m_colArray = new Color[0];
  114.       this.m_nNoElements = 0;
  115.    }
  116.  
  117.    CColorArray(int var1) {
  118.       this.SetSize(var1);
  119.    }
  120.  
  121.    boolean SetAt(int var1, Color var2) {
  122.       boolean var3 = false;
  123.  
  124.       try {
  125.          this.m_colArray[var1] = var2;
  126.          var3 = true;
  127.       } catch (ArrayIndexOutOfBoundsException var4) {
  128.          var3 = false;
  129.       }
  130.  
  131.       return var3;
  132.    }
  133. }
  134.